#include<iostream>
#include<vector>
#include<stack>
using namespace std;

int trap(vector<int>& numset)
{
	int n=numset.size();
	vector<int> leftMax(n),rightMax(n);

    leftMax[0]=numset[0];
	for(int i=1;i<n;i++)
	{
		leftMax[i]=max(numset[i],leftMax[i-1]);
	}

    rightMax[n-1]=numset[n-1];
	for(int i=n-2;i>=0;i--)
	{
		rightMax[i]=max(numset[i],rightMax[i+1]);
	}
	
	int ret=0;
	for(int i=0;i<n;i++)
	{
		ret+=min(rightMax[i],leftMax[i])-numset[i];
	}

	return ret;
}

int main()
{
	int n;cin>>n;
	vector<int> height(n);

	for(int i=0;i<n;i++)
	{
		cin>>height[i];
	}

	cout<<trap(height)<<endl;
}